Gigabit Ethernet
Gigabit Ethernet is a developing standard for high-speed data transmission, particularly LAN transmissions. Gigabit Ethernet allows connection between two devices in either a full-duplex or a half-duplex mode. In half-duplex mode, Gigabit Ethernet uses the CSMA/CD access method. In full-duplex mode, frame-based flow control as defined in the IEEE 802.3x standard is used. In current Gigabit Ethernet, a low layer converts transmitted data from an 8-bit binary representation into a 10-bit code-word. (This is sometimes referred to in the art, generally, as Block Code encoding.) The 10b codes are selected to guarantee a sufficient number of ‘1’ bits (or bit transitions) to allow for clock synchronization. A Physical Coding Sublayer (PCS) examines incoming octets and encodes octets into a ten bit code. This is referred to as 8b/10b encoding.
In standard 8b/10b encoding, every ten bit code must fit into one of the following three possibilities: (1) five ones and five zeros; (2) four ones and six zeros; (3) six ones and four zeros. In some implementations, a special sequence of seven bits, called a comma, is used in aligning the incoming serial stream. The comma can also be used in acquiring and maintaining synchronization. The comma generally can not be transmitted across the boundaries of any two adjacent code groups unless an error has occurred, though in some implementations it may be handled as one type of control code.
In Gigabit Ethernet, DC balancing is achieved through the use of a running disparity calculation. Running disparity is designed to keep the number of ones transmitted by a station equal to the number of zeros transmitted by that station. Running disparity can take on one of two values: positive or negative. In the absence of errors, the running disparity value is positive if more ones have been transmitted than zeros and the running disparity value is negative if more zeros have been transmitted than ones since power-on or reset.
Control Codes
In one commonly used version of 8b/10b, there are twelve special control codes that may be encoded into ten bits. Thus, another advantage in using 8b/10b encoding is the ability to use special code-words in the 8b/10b schema that would be impossible if no encoding was performed.
Other References
T1X1 standards contribution T1X1.5/2000-197 and -197R1
Email from Sycamore Networks on 64b/65b codes
http://www.eetasia.com/ART—8800031665—499481,590626.HTM
http://www.oreilly.com/reference/dictionary/terms/1/8B—10B.htm
http://www.oreilly.com/reference/dictionary/terms/E/Encoding.htm
U.S. Pat. No. 4,665,517 (Widmer, IBM) May 12, 1987, Method Of Coding To Minimize Delay At A Communication Node.